Activando las librerías

Para efectos del presente trabajo es necesario activar las librerías que se van a utilizar para graficar.

library(ggplot2) #Gráficas más bonitas
library(plotly) #Gráficas interactivas
## 
## Attaching package: 'plotly'
## The following object is masked from 'package:ggplot2':
## 
##     last_plot
## The following object is masked from 'package:stats':
## 
##     filter
## The following object is masked from 'package:graphics':
## 
##     layout

1. ¿Qué es una gráfica?

Es un tipo de representación de datos, generalmente cuantitativos, mediante recursos visuales, para que se manifieste visualmente la relación matemática o correlación estadística que guardan entre sí.

2. Ejemplos de gráficas de funciones

Definimos un dominio x para nuestras funciones

x<-(-3:6)
x
##  [1] -3 -2 -1  0  1  2  3  4  5  6

Gráfica de una función lineal: f(x)=2x+6 y=mx+b

fx<-2*x+6
plot(x,fx, col="52",type="o")

Gráfica de una función cúbica: g(x)=x^3 y=mx+b

gx<-x^3
plot(x,gx, main="Función cúbica", xlab="Eje x", ylab="Eje y", col="red", type="o")

Gráfica de una función logarítmica: h(x)=log(x)

hx<-log(x)
## Warning in log(x): NaNs produced
plot(x,hx, main="Función logarítmica", xlab="Eje x", ylab="Eje y", col="orange", type="o")

3. Graficando con ggplot

datos<-data.frame(x,fx,gx,hx)
datos
##     x fx  gx        hx
## 1  -3  0 -27       NaN
## 2  -2  2  -8       NaN
## 3  -1  4  -1       NaN
## 4   0  6   0      -Inf
## 5   1  8   1 0.0000000
## 6   2 10   8 0.6931472
## 7   3 12  27 1.0986123
## 8   4 14  64 1.3862944
## 9   5 16 125 1.6094379
## 10  6 18 216 1.7917595

Gráfica de f(x):

grafica_fx<-ggplot() + geom_point(data = datos, aes(x = x, y = fx), color = "purple")
grafica_fx

Gráfica de h(x):

grafica_hx<-ggplot() + geom_polygon(data = datos, aes(x = x, y = hx), fill = "pink")
grafica_hx

4. Caso práctico

Un ciclista recorre el Estado de México durante 15 días. Como el gobierno recopila los datos de su GPS es posible determinar la longitud y latitud en los lugares en los que estuvo:

dia<-1:14
longitud<-sample(seq(-99.5,-99.3,0.01), 14, T)
latitud<-sample(seq(19.2,19.5,0.01), 14, T)
gps<-data.frame(dia,longitud,latitud)
gps
##    dia longitud latitud
## 1    1   -99.32   19.23
## 2    2   -99.33   19.20
## 3    3   -99.41   19.48
## 4    4   -99.30   19.36
## 5    5   -99.41   19.24
## 6    6   -99.34   19.27
## 7    7   -99.38   19.22
## 8    8   -99.48   19.34
## 9    9   -99.49   19.37
## 10  10   -99.31   19.22
## 11  11   -99.50   19.21
## 12  12   -99.40   19.21
## 13  13   -99.36   19.35
## 14  14   -99.31   19.26

4.1 Graficando con ggplot y geom_point

Vamos a utilizar la función ggplot y la función geom_point para hacer una grafica de puntos:

ruta_ciclista<-ggplot(gps)+geom_point(aes(x=longitud,y=latitud), color = dia)
ruta_ciclista

4.2 Graficando con ggplot y geom_text

Vamos a utilizar la función ggplot y la función geom_text para hacer una grafica con los números de los días que el ciclista estuvo en el EdoMex

ruta_con_dias<-ggplot(gps)+ geom_text(aes(longitud, latitud, label = gps$dia))
ruta_con_dias

4.3 Haciendo una gráfica interactiva con ggplotly

Vamos a utilizar la función ggplotly para hacer una grafica interactiva:

ggplotly(ruta_con_dias)